Struct isotope::prelude::ReduceUntil [−][src]
pub struct ReduceUntil<R, C> { pub reduce: R, pub until: C, }
Expand description
A reduction configuration to keep going until a given condition has been reached, delegating otherwise to another configuration
Fields
reduce: R
The underlying reduction configuration
until: C
An additional termination condition for this reduction
Trait Implementations
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
impl<R, C> ReductionConfig for ReduceUntil<R, C> where
R: ReductionConfig,
C: TerminationCondition,
[src]
impl<R, C> ReductionConfig for ReduceUntil<R, C> where
R: ReductionConfig,
C: TerminationCondition,
[src]type AsRef = Self
type AsRef = Self
Get this reduction configuration as a reference
Register a pushed substitution.
Register a popped substitution.
Register a beta reduction: return whether to terminate beta reduction (Error::StopReduction
)
Register an eta reduction: return whether to terminate eta reduction (Error::StopReduction
)
Given a term, whether to attempt an eta reduction or terminate (Error::StopReduction
)
Given a term, whether to attempt a subterm reduction or terminate (Error::StopReduction
)
Given a term, whether to attempt a head reduction or terminate (Error::StopReduction
)
Get whether a term with the given filter intersects with this context
Get this reduction configuration as a mutable reference
Auto Trait Implementations
impl<R, C> RefUnwindSafe for ReduceUntil<R, C> where
C: RefUnwindSafe,
R: RefUnwindSafe,
impl<R, C> Send for ReduceUntil<R, C> where
C: Send,
R: Send,
impl<R, C> Sync for ReduceUntil<R, C> where
C: Sync,
R: Sync,
impl<R, C> Unpin for ReduceUntil<R, C> where
C: Unpin,
R: Unpin,
impl<R, C> UnwindSafe for ReduceUntil<R, C> where
C: UnwindSafe,
R: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Borrow an optional value of type T
Compare self to key
and return true
if they are equal.